package com.gts.sofa.pojo;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

/**
 *
 *  @Autowired 注解用的位置
 *  1、属性
 *  2、方法    用在方法上，方法需要的参数值会从容器里面获取，创建当前类的对象时会调用set方法，会调用set方法完成 赋值
 *  3、构造器  如果组件只有一个有参构造器， @Autowired 可以省略掉，构造器的参数依然可以从容器中获取
 *  4、参数    @Autowired 可以省略
 *
 *
 *
 */
@Component
public class Boss {


    private Car car;

    //可以标在构造器上
    //构造器用的组件从容器里面获取，然后完成赋值
    //如果组件只有一个有参构造器， @Autowired 可以省略掉，构造器的参数依然可以从容器中获取
    //@Autowired
    public Boss(Car car){
        this.car = car;

    }

    public Car getCar() {
        return car;
    }

   // @Autowired
    //用在方法上，方法需要的参数值会从容器里面获取
    //创建当前类的对象时会调用set方法，会调用set方法完成 赋值
    public void setCar(Car car) {
        this.car = car;
    }


    @Override
    public String toString() {
        return "Boss{" +
                "car=" + car +
                '}';
    }


    public void run(){
        System.out.println("老板在开车");
    }
}



